package com.zhaoliang.controller;

import com.zhaoliang.dao.GoodDao;
import com.zhaoliang.dao.impl.GoodDaoImpl;
import com.zhaoliang.pojo.Good;

import java.util.List;
import java.util.Scanner;

/**
 * 采购管理系统-控制菜单
 */
public class Menu {

    /**
     * 控制台录入对象
     */
    Scanner input = new Scanner(System.in);

    /**
     * 物品数据访问对象
     */
    GoodDao goodDao = new GoodDaoImpl();

    /**
     * 显示主菜单，返回用户选中
     *
     * @return
     */
    public int showMainMenu() {
        System.out.println("==========================欢迎使用采购管理系统==========================");
        System.out.println("1. 查看采购清单");
        System.out.println("2. 查看采购详情");
        System.out.println("3. 修改采购信息");
        System.out.println("4. 删除采购物品");
        System.out.println("5. 退出");
        System.out.println("====================================================================");
        System.out.print("请选择：");

        // 返回用户录入的内容
        return input.nextInt();
    }

    /**
     * 退出系统
     *
     * @return
     */
    public boolean exit() {
        // 1. 让用户确认一下，避免用户误点击
        System.out.println("是否确认退出系统?(Y/N)");
        // 2. 判断控制台录入的是否是Y，是Y结束循环，所以这里录入要取反结束循环
        return !"Y".equalsIgnoreCase(input.next());
    }

    /**
     * 显示采购清单
     */
    public void showGoodList() {
        // 1. 获取物品列表
        List<Good> goodList = goodDao.getGoodList();
        // 2. 打印输出
        System.out.println("---------------------------------------------------------------------------");
        System.out.println("序号\t\t\t名称\t\t\t价格\t\t\t数量\t\t\t备注");
        // 2-1. 没有物品清单
        if (goodList == null || goodList.size() <= 0) {
            System.out.println("对不起，没有采购清单！");
        } else {
            // 2-2. 有物品清单
            goodList.forEach(System.out::println);
        }
        System.out.println("---------------------------------------------------------------------------");
    }
}
